/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package Controller;

import Model.GpsVehiculo;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.StringTokenizer;

/**
 *
 * @author Rossy
 */
public class LecturaVehiculo {
    
    FileInputStream fstream = null;
    DataInputStream entrada = null;
    BufferedReader buffer = null;
    File archivo = null;
    FileReader fr = null;
    BufferedReader br = null;
    
    public ArrayList<GpsVehiculo> abrirArchivo(String file){
        String linea;
        ArrayList<GpsVehiculo> gpsList = new ArrayList<GpsVehiculo>();
        GpsVehiculo gps;
        gps = null;
//        Vehiculo vehiculo=new Vehiculo();
//            vehiculo=null;
        try {
            // Apertura del fichero y creacion de BufferedReader para poder
            // hacer una lectura comoda (disponer del metodo readLine()).
            archivo = new File (file);
            fr = new FileReader (archivo);
            br = new BufferedReader(fr);
            // Lectura del fichero
            while((linea=br.readLine())!=null){
                gps=leerLinea(linea);
                gpsList.add(gps);
            }
        }
      catch(Exception e){
         e.printStackTrace();
      }finally{
         // En el finally cerramos el fichero, para asegurarnos que se cierra tanto si todo va bien como si salta una excepcion.
         try{                    
            if( null != fr ){   
               fr.close();     
            }                  
         }catch (Exception e2){ 
            e2.printStackTrace();
         }
      }
      return gpsList;  
   }
    
    
    public GpsVehiculo leerLinea(String linea){
          StringTokenizer token;
          String strPosX,strPosY,strTiempo,strVelocidad;
          int posX,posY,tiempo,velocidad;
          
          GpsVehiculo gps=new GpsVehiculo();
          
          token = new StringTokenizer(linea,",");
          strPosX = token.nextToken();
          strPosY = token.nextToken();
          strTiempo = token.nextToken();
          strVelocidad = token.nextToken();
          
          posX=Integer.parseInt(strPosX);
          posY=Integer.parseInt(strPosY);
          tiempo=Integer.parseInt(strTiempo);
          velocidad=Integer.parseInt(strVelocidad);
          
          gps.setPosX(posX);
          gps.setPosY(posY);
          gps.setTiempo(tiempo);
          gps.setVelocidad(velocidad);
          
          return gps;
    }

}

//import java.io.*;
//import java.util.StringTokenizer;

//class LecturaDatos {
//   public static void main(String [] arg) {
//      File archivo = null;
//      FileReader fr = null;
//      BufferedReader br = null;
// 
//      try {
//         // Apertura del fichero y creacion de BufferedReader para poder
//         // hacer una lectura comoda (disponer del metodo readLine()).
//         archivo = new File ("C:\\Users\\Rossy\\Desktop\\dpfiles\\veh.AAA001.20140531.txt");
//         fr = new FileReader (archivo);
//         br = new BufferedReader(fr);
// 
//         // Lectura del fichero
//         String linea;
//         int hora=0,min=0,seg=0,posX=0,posY=0;
//         while((linea=br.readLine())!=null){
//            //System.out.println(linea);
//             LeerLinea(linea,hora,min,seg,posX,posY);
//             
//             ImprimirLinea(hora,min,seg,posX,posY);
//         }
//            
//      }
//      catch(Exception e){
//         e.printStackTrace();
//      }finally{
//         // En el finally cerramos el fichero, para asegurarnos que se cierra tanto si todo va bien como si salta una excepcion.
//         try{                    
//            if( null != fr ){   
//               fr.close();     
//            }                  
//         }catch (Exception e2){ 
//            e2.printStackTrace();
//         }
//      }
//   }
//
//    private static void LeerLinea(String linea, int hora, int min, int seg, int posX, int posY) {
//        StringTokenizer elemento=new StringTokenizer(linea,",");
//        int i=0,j=0;
//        String horaCadena,posXCadena,posYCadena;
//        while(elemento.hasMoreTokens()){
//            String str=elemento.nextToken();
//            if (i==0){
//                horaCadena=str;
//                StringTokenizer subelemento=new StringTokenizer(horaCadena,":");
//                while(subelemento.hasMoreTokens()){
//                     String str1=subelemento.nextToken();
//                     if(j==0){
//                         String horaC=str1;
//                         hora=Integer.parseInt(horaC);
//                     }
//                     if(j==1){
//                         String minC=str1;
//                         min=Integer.parseInt(minC);
//                     }
//                     if(j==2){
//                         String segC=str1;
//                         seg=Integer.parseInt(segC);
//                     }
//                     j++;
//                }
//            }
//            if (i==1){
//                posXCadena=str;
//                posX=Integer.parseInt(posXCadena);
//            }
//            if (i==2){
//               posYCadena=str; 
//               posY=Integer.parseInt(posYCadena);
//            }
//            i++;
//        }
//    }
//
//    private static void ImprimirLinea(int hora, int min, int seg, int posX, int posY) {
//        System.out.println("Hora:"+hora);
//        System.out.println("Min:"+min);
//        System.out.println("Seg:"+seg);
//        System.out.println("pos X:"+posX);
//        System.out.println("pos Y:"+posY);
//    }
//}